How statically-typed functional programmers write code
نویسندگان
چکیده
How working statically-typed functional programmers write code is largely understudied. And yet, a better understanding of developer practices could pave the way for design more useful and usable tooling, ergonomic languages, effective on-ramps into programming communities. The goal this work to address knowledge gap: understand high-level authoring patterns that employ. We conducted grounded theory analysis 30 sessions practicing programmers, 15 which also included semi-structured interview. we developed gives insight how specific affordances affect domain modeling, type construction, focusing techniques, exploratory reasoning strategies, expressions intent. set quantitative lab experiments validate our findings, including often iterate between editing types expressions, they run their compiler on even when know it will not successfully compile, make textual program edits reliably signal future intend make. Lastly, outline implications findings language tool design. success approach in revealing authorship suggests same methodology be used study other understudied programmer populations.
منابع مشابه
Reflection for Statically Typed Languages
An object-oriented language that permits changing the behavior of a class or of a single object is said to support computational reflection. Existing reflective facilities in object-oriented languages are either complex, type unsafe, or have a large performance penalty. We propose a simple, easy-to-understand, and statically typed model that captures much of the functionalities of other reflect...
متن کاملCan Object-Oriented Databases be Statically Typed?
Can there be a database programming language with a type system that matches the data model? Can such a language be strongly typed? Can it be statically typed? A static type system for database programming languages is, of course, the Holy Grail of the subject. However we, the authors, who have spent some effort in searching for this venerated object, now doubt its existence and have come to be...
متن کاملModular, Statically Typed, Flexibly Extensible Programming Language
Even though extensible programming languages have been around for decades, they hav e not received much attention so far. To obtain a more attractive solution, where extending the language is almost as easy as writing normal programs, extensibility should not be provided as a separate add-on, but rather as the very heart of the language. Furthermore, syntactic flexibility should not only allow ...
متن کاملStatically Typed Document Transformation: An Xtatic Experience
XTATIC is a lightweight extension of C⋕ with native support for statically typed XML processing. It features XML trees as built-in values, a refined type system based on regular types à la XDUCE, and regular patterns for investigating and manipulating XML. We describe our experiences using XTATIC in a real-world application: a program for transforming XMLSPEC, a format used for authoring W3C te...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on programming languages
سال: 2021
ISSN: ['2475-1421']
DOI: https://doi.org/10.1145/3485532